<!DOCTYPE html>
<html lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>prepare_object_model_3d [HALCON算子参考手册]</title>
<style type="text/css">
      body {
    color: #000000;
    background-color: #ffffff;
    margin: 0;
    font-family: Arial, Helvetica, sans-serif;
}

.body_main {
    margin-left: 35px;
    margin-right: 35px;
}

@media screen and (min-width:992px) {

    .body_main {
        margin-left: 10%;
        margin-right: 10%;
    }

    table.toctable {
        width: 80%
    }
}

@media screen and (min-width:1400px) {

    .body_main {
        margin-left: 15%;
        margin-right: 15%;
    }

    table.toctable {
        width: 70%
    }
}

body>div ul ul {
    margin-left: inherit;
}

a:link {
    color: #0044cc;
}

a:link,
a:visited {
    text-decoration: none;
}

a:link:hover,
a:visited:hover {
    text-decoration: underline;
}

th {
    text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    text-rendering: optimizeLegibility;
    color: #666666;
}

code {
    font-family: monospace,monospace;
}

h1 a.halconoperator {
    font-family: Arial, Helvetica, sans-serif;
    color: #666666;
}

h2 a.halconoperator {
    font-family: Arial, Helvetica, sans-serif;
    color: #666666;
}

hr {
    border: 0;
    border-top: solid 1px #f28d26;
}

.pre {
    display: block;
    padding-bottom: 1ex;
    font-family: monospace;
    white-space: pre;
}

pre {
    font-family: monospace, monospace;
    padding: 1ex;
    white-space: pre-wrap;
}

.toc {
    font-size: 80%;
    border-top: 1px dashed #f28d26;
    border-bottom: 1px dashed #f28d26;
    padding-top: 5px;
    padding-bottom: 5px;
}

.inv {
    margin: 0;
    border: 0;
    padding: 0;
}

.banner {
    color: #666666;
    padding-left: 1em;
}

.logo {
    background-color: white;
}

.keyboard {
    font-size: 80%;
    padding-left: 3px;
    padding-right: 3px;
    border-radius: 5px;
    border-width: 1px;
    border-style: solid;
    border-color: #f28d26;
    background-color: #f3f3f3;
}

.warning {
    margin-top: 2ex;
    margin-bottom: 1ex;
    padding: 10px;
    text-align: center;
    border: 1px solid;
    color: #bb0000;
    background-color: #fff7f7
}

.imprint {
    margin-top: 1ex;
    font-size: 80%;
    color: #666666;
}

.imprinthead {
    font-weight: bolder;
    color: #666666;
}

.indexlink {
    text-align: right;
    padding-bottom: 5px;
}

.postscript {
    margin-top: 2ex;
    font-size: 80%;
    color: #666666
}

.evenrow {
    background-color: #e7e7ef;
    vertical-align: top;
}

.oddrow {
    background-color: #f7f7ff;
    vertical-align: top;
}

.headrow {
    background-color: #97979f;
    color: #ffffff;
    vertical-align: top;
}

.logorow {
    vertical-align: top;
}

.error {
    color: red;
}

.var {
    font-style: italic
}

.halconoperator {
    font-family: monospace, monospace;
}

span.operator {
    font-family: monospace, monospace;
}

span.procedure {
    font-family: monospace, monospace;
}

span.operation {
    font-family: monospace, monospace;
}

span.feature {
    font-family: Arial, Helvetica, Homerton, sans-serif;
}

ul {
    padding-left: 1.2em;
}

li.dot {
    list-style-type: square;
    color: #f28d26;
}

.breadcrumb {
    font-size: 80%;
    color: white;
    background-color: #062d64;
    margin-bottom: 20px;
    padding-left: 35px;
    padding-right: 35px;
    padding-bottom: 15px;
}

.webbar {
    font-size: 80%;
    background-color: #dddddd;
    margin-top: 0px;
    margin-left: -35px;
    margin-right: -35px;
    margin-bottom: 0px;
    padding-top: 5px;
    padding-left: 35px;
    padding-right: 35px;
    padding-bottom: 5px;
}

.footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    border-top: 1px dashed #f28d26;
    font-size: 80%;
    color: #666666;
    padding-bottom: 8px;
}

.footer .socialmedia a {
    padding-left: 7px;
}

.socialmedia {
    padding-top: 10px;
}

.copyright {
    margin-top: 19px;
}

.breadcrumb a {
    color: #ffffff;
    border-bottom: 1px solid white;
}

.breadcrumb a:link:hover,
.breadcrumb a:visited:hover {
    text-decoration: none;
    border-bottom: none;
}

.heading {
    margin-top: 1ex;
    font-size: 110%;
    font-weight: bold;
    color: #666666;
}

.text {
    color: black;
}

.example {
    font-size: 80%;
    background-color: #f3f3f3;
    border: 1px dashed #666666;
    padding: 10px;
}

.displaymath {
    display: block;
    text-align: center;
    margin-top: 1ex;
    margin-bottom: 1ex;
}

.title {
    float: left;
    padding-top: 3px;
    padding-bottom: 3px;
}

.signnote {
    font-family: Arial, Helvetica, Homerton, sans-serif;
    font-size: 80%;
    color: #666666;
    font-weight: lighter;
    font-style: italic
}

.par {
    margin-bottom: 1.5em;
}

.parhead {
    text-align: right;
}

.parname {
    float: left;
}

.pardesc {
    font-size: 85%;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    margin-left: 2em;
}

.parcat {
    color: #666;
    font-weight: bold;
}

*[data-if=cpp],
*[data-if=c],
*[data-if=dotnet],
*[data-if=com],
*[data-if=python] {
    display: none;
}

.tabbar {
    text-align: right;
    border-bottom: 1px solid #f28d26;
    margin-bottom: 0.5em;
}

ul.tabs {
    padding-top: 3px;
    padding-bottom: 3px;
    margin-top: 10px;
    margin-bottom: 0;
    font-size: 80%
}

ul.tabs li {
    padding-top: 3px;
    padding-bottom: 3px;
    display: inline;
    overflow: hidden;
    list-style-type: none;
    margin: 0;
    margin-left: 8px;
    border-top: 1px solid #666;
    border-left: 1px solid #666;
    border-right: 1px solid #666;
}

ul.tabs li.active {
    border-left: 1px solid #f28d26;
    border-right: 1px solid #f28d26;
    border-top: 1px solid #f28d26;
    border-bottom: 1px solid #fff;
}

ul.tabs li.inactive {
    background-color: #eee;
}

ul.tabs li a {
    padding-left: 5px;
    padding-right: 5px;
    color: #666;
}

ul.tabs li a:link:hover {
    text-decoration: none;
}

ul.tabs li.inactive a {
    color: #666;
}

ul.tabs li.active a {
    color: black;
}

dl.generic dd {
    margin-bottom: 1em;
}

.pari {
    color: olive;
}

.paro {
    color: maroon;
}

.comment {
    font-size: 80%;
    color: green;
    white-space: nowrap;
}

table.grid {
    border-collapse: collapse;
}

table.grid td {
    padding: 5px;
    border: 1px solid;
}

table.layout {
    border: 0px;
}

table.layout td {
    padding: 5px;
}

table.table {
    border-collapse: collapse;
}

table.table td {
    padding: 5px;
    border-left: 0px;
    border-right: 0px;
}

table.table tr:last-child {
    border-bottom: 1px solid;
}

table.table th {
    padding: 5px;
    border-top: 1px solid;
    border-bottom: 1px solid;
    border-left: 0px;
    border-right: 0px;
}

.details_summary {
    cursor: pointer;
}

table.toctable {
    width: 100%;
}

table.toctable col:first-child {
    width: 20%;
}

table.toctable col:nth-last-child(2) {
    width: 8%;
}

table.altcolored tr:nth-child(even) {
    background-color: #f3f3f3;
}

    </style>
<!--OP_REF_STYLE_END-->
<script>
    <!--
var active_lang='hdevelop';function switchVisibility(obj,active_lang,new_lang)
{var display_style='inline';
for(var i=0;i<obj.length;i++)
{if(obj.item(i).getAttribute('data-if')==new_lang)
{obj.item(i).style.display=display_style;}
if(obj.item(i).getAttribute('data-if')==active_lang)
{obj.item(i).style.display='none';}}
return;}
function toggleLanguage(new_lang,initial)
{if(active_lang!=new_lang)
{var lis=document.getElementsByTagName('li');for(var i=0;i<lis.length;i++)
{if(lis.item(i).id=='syn-'+new_lang)
{lis.item(i).className='active';}
else
{lis.item(i).className='inactive';}}
var divs=document.getElementsByTagName('div');var spans=document.getElementsByTagName('span');switchVisibility(divs,active_lang,new_lang);switchVisibility(spans,active_lang,new_lang);if(!initial)
{setCookie("halcon_reference_language",new_lang,null,null);}
active_lang=new_lang;}
return;}
function setCookie(name,value,domain,exp_offset,path,secure)
{localStorage.setItem(name,value);}
function getCookie(name)
{return localStorage.getItem(name);}
function initialize()
{var qs=location.href.split('?')[1];var qs_lang_raw=location.href.split('interface=')[1];var qs_lang;if(qs_lang_raw)
{qs_lang=qs_lang_raw.split('#')[0];}
var cookie_lang=getCookie("halcon_reference_language");var new_lang;if((qs_lang=="hdevelop")||(qs_lang=="dotnet")||(qs_lang=="python")||(qs_lang=="cpp")||(qs_lang=="c"))
{new_lang=qs_lang;setCookie("halcon_reference_language",new_lang,null,null);}
else if((cookie_lang=="hdevelop")||(cookie_lang=="dotnet")||(cookie_lang=="python")||(cookie_lang=="cpp")||(cookie_lang=="c"))
{new_lang=cookie_lang;}
else
{new_lang="hdevelop";}
toggleLanguage(new_lang,1);return;}
-->

  </script>
</head>
<body onload="initialize();">
<div class="breadcrumb">
<br class="inv"><a href="index.html">目录</a> / <a href="toc_3dobjectmodel.html">3D Object Model</a> / <a href="toc_3dobjectmodel_transformations.html">变换</a><br class="inv">
</div>
<div class="body_main">
<div class="tabbar"><ul class="tabs">
<li id="syn-hdevelop" class="active"><a href="javascript:void(0);" onclick="toggleLanguage('hdevelop')" onfocus="blur()">HDevelop</a></li>
<li id="syn-dotnet" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('dotnet')" onfocus="blur()">.NET</a></li>
<li id="syn-python" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('python')" onfocus="blur()">Python</a></li>
<li id="syn-cpp" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('cpp')" onfocus="blur()">C++</a></li>
<li id="syn-c" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('c')" onfocus="blur()">C</a></li>
</ul></div>
<div class="indexlink">
<a href="index_classes.html"><span data-if="dotnet" style="display:none;">类别</span><span data-if="cpp" style="display:none;">类别</span></a><span data-if="dotnet" style="display:none;"> | </span><span data-if="cpp" style="display:none;"> | </span><a href="index_by_name.html">算子列表</a>
</div>
<!--OP_REF_HEADER_END-->
<h1 id="sec_name">
<span data-if="hdevelop" style="display:inline;">prepare_object_model_3d</span><span data-if="c" style="display:none;">T_prepare_object_model_3d</span><span data-if="cpp" style="display:none;">PrepareObjectModel3d</span><span data-if="dotnet" style="display:none;">PrepareObjectModel3d</span><span data-if="python" style="display:none;">prepare_object_model_3d</span> (算子名称)</h1>
<h2>名称</h2>
<p><code><span data-if="hdevelop" style="display:inline;">prepare_object_model_3d</span><span data-if="c" style="display:none;">T_prepare_object_model_3d</span><span data-if="cpp" style="display:none;">PrepareObjectModel3d</span><span data-if="dotnet" style="display:none;">PrepareObjectModel3d</span><span data-if="python" style="display:none;">prepare_object_model_3d</span></code> — Prepare a 3D object model for a certain operation.</p>
<h2 id="sec_synopsis">参数签名</h2>
<div data-if="hdevelop" style="display:inline;">
<p>
<code><b>prepare_object_model_3d</b>( :  : <a href="#ObjectModel3D"><i>ObjectModel3D</i></a>, <a href="#Purpose"><i>Purpose</i></a>, <a href="#OverwriteData"><i>OverwriteData</i></a>, <a href="#GenParamName"><i>GenParamName</i></a>, <a href="#GenParamValue"><i>GenParamValue</i></a> : )</code></p>
</div>
<div data-if="c" style="display:none;">
<p>
<code>Herror <b>T_prepare_object_model_3d</b>(const Htuple <a href="#ObjectModel3D"><i>ObjectModel3D</i></a>, const Htuple <a href="#Purpose"><i>Purpose</i></a>, const Htuple <a href="#OverwriteData"><i>OverwriteData</i></a>, const Htuple <a href="#GenParamName"><i>GenParamName</i></a>, const Htuple <a href="#GenParamValue"><i>GenParamValue</i></a>)</code></p>
</div>
<div data-if="cpp" style="display:none;">
<p>
<code>void <b>PrepareObjectModel3d</b>(const HTuple&amp; <a href="#ObjectModel3D"><i>ObjectModel3D</i></a>, const HTuple&amp; <a href="#Purpose"><i>Purpose</i></a>, const HTuple&amp; <a href="#OverwriteData"><i>OverwriteData</i></a>, const HTuple&amp; <a href="#GenParamName"><i>GenParamName</i></a>, const HTuple&amp; <a href="#GenParamValue"><i>GenParamValue</i></a>)</code></p>
<p>
<code>static void <a href="HObjectModel3D.html">HObjectModel3D</a>::<b>PrepareObjectModel3d</b>(const HObjectModel3DArray&amp; <a href="#ObjectModel3D"><i>ObjectModel3D</i></a>, const HString&amp; <a href="#Purpose"><i>Purpose</i></a>, const HString&amp; <a href="#OverwriteData"><i>OverwriteData</i></a>, const HTuple&amp; <a href="#GenParamName"><i>GenParamName</i></a>, const HTuple&amp; <a href="#GenParamValue"><i>GenParamValue</i></a>)</code></p>
<p>
<code>void <a href="HObjectModel3D.html">HObjectModel3D</a>::<b>PrepareObjectModel3d</b>(const HString&amp; <a href="#Purpose"><i>Purpose</i></a>, const HString&amp; <a href="#OverwriteData"><i>OverwriteData</i></a>, const HTuple&amp; <a href="#GenParamName"><i>GenParamName</i></a>, const HTuple&amp; <a href="#GenParamValue"><i>GenParamValue</i></a>) const</code></p>
<p>
<code>void <a href="HObjectModel3D.html">HObjectModel3D</a>::<b>PrepareObjectModel3d</b>(const char* <a href="#Purpose"><i>Purpose</i></a>, const char* <a href="#OverwriteData"><i>OverwriteData</i></a>, const HTuple&amp; <a href="#GenParamName"><i>GenParamName</i></a>, const HTuple&amp; <a href="#GenParamValue"><i>GenParamValue</i></a>) const</code></p>
<p>
<code>void <a href="HObjectModel3D.html">HObjectModel3D</a>::<b>PrepareObjectModel3d</b>(const wchar_t* <a href="#Purpose"><i>Purpose</i></a>, const wchar_t* <a href="#OverwriteData"><i>OverwriteData</i></a>, const HTuple&amp; <a href="#GenParamName"><i>GenParamName</i></a>, const HTuple&amp; <a href="#GenParamValue"><i>GenParamValue</i></a>) const  <span class="signnote">
            (
            Windows only)
          </span></code></p>
</div>
<div data-if="com" style="display:none;"></div>
<div data-if="dotnet" style="display:none;">
<p>
<code>static void <a href="HOperatorSet.html">HOperatorSet</a>.<b>PrepareObjectModel3d</b>(<a href="HTuple.html">HTuple</a> <a href="#ObjectModel3D"><i>objectModel3D</i></a>, <a href="HTuple.html">HTuple</a> <a href="#Purpose"><i>purpose</i></a>, <a href="HTuple.html">HTuple</a> <a href="#OverwriteData"><i>overwriteData</i></a>, <a href="HTuple.html">HTuple</a> <a href="#GenParamName"><i>genParamName</i></a>, <a href="HTuple.html">HTuple</a> <a href="#GenParamValue"><i>genParamValue</i></a>)</code></p>
<p>
<code>static void <a href="HObjectModel3D.html">HObjectModel3D</a>.<b>PrepareObjectModel3d</b>(<a href="HObjectModel3D.html">HObjectModel3D[]</a> <a href="#ObjectModel3D"><i>objectModel3D</i></a>, string <a href="#Purpose"><i>purpose</i></a>, string <a href="#OverwriteData"><i>overwriteData</i></a>, <a href="HTuple.html">HTuple</a> <a href="#GenParamName"><i>genParamName</i></a>, <a href="HTuple.html">HTuple</a> <a href="#GenParamValue"><i>genParamValue</i></a>)</code></p>
<p>
<code>void <a href="HObjectModel3D.html">HObjectModel3D</a>.<b>PrepareObjectModel3d</b>(string <a href="#Purpose"><i>purpose</i></a>, string <a href="#OverwriteData"><i>overwriteData</i></a>, <a href="HTuple.html">HTuple</a> <a href="#GenParamName"><i>genParamName</i></a>, <a href="HTuple.html">HTuple</a> <a href="#GenParamValue"><i>genParamValue</i></a>)</code></p>
</div>
<div data-if="python" style="display:none;">
<p>
<code>def <b>prepare_object_model_3d</b>(<a href="#ObjectModel3D"><i>object_model_3d</i></a>: MaybeSequence[HHandle], <a href="#Purpose"><i>purpose</i></a>: str, <a href="#OverwriteData"><i>overwrite_data</i></a>: str, <a href="#GenParamName"><i>gen_param_name</i></a>: Sequence[Union[str, float, int]], <a href="#GenParamValue"><i>gen_param_value</i></a>: Sequence[Union[str, float, int]]) -&gt; None</code></p>
</div>
<h2 id="sec_description">描述</h2>
<p>该算子 <code><span data-if="hdevelop" style="display:inline">prepare_object_model_3d</span><span data-if="c" style="display:none">prepare_object_model_3d</span><span data-if="cpp" style="display:none">PrepareObjectModel3d</span><span data-if="com" style="display:none">PrepareObjectModel3d</span><span data-if="dotnet" style="display:none">PrepareObjectModel3d</span><span data-if="python" style="display:none">prepare_object_model_3d</span></code> prepares the 3D object model
<a href="#ObjectModel3D"><i><code><span data-if="hdevelop" style="display:inline">ObjectModel3D</span><span data-if="c" style="display:none">ObjectModel3D</span><span data-if="cpp" style="display:none">ObjectModel3D</span><span data-if="com" style="display:none">ObjectModel3D</span><span data-if="dotnet" style="display:none">objectModel3D</span><span data-if="python" style="display:none">object_model_3d</span></code></i></a> for a following operation given in <a href="#Purpose"><i><code><span data-if="hdevelop" style="display:inline">Purpose</span><span data-if="c" style="display:none">Purpose</span><span data-if="cpp" style="display:none">Purpose</span><span data-if="com" style="display:none">Purpose</span><span data-if="dotnet" style="display:none">purpose</span><span data-if="python" style="display:none">purpose</span></code></i></a>.
It computes values required for the operation and stores them in
<a href="#ObjectModel3D"><i><code><span data-if="hdevelop" style="display:inline">ObjectModel3D</span><span data-if="c" style="display:none">ObjectModel3D</span><span data-if="cpp" style="display:none">ObjectModel3D</span><span data-if="com" style="display:none">ObjectModel3D</span><span data-if="dotnet" style="display:none">objectModel3D</span><span data-if="python" style="display:none">object_model_3d</span></code></i></a>, thus speeding up the following operation.
It is not necessary to call <code><span data-if="hdevelop" style="display:inline">prepare_object_model_3d</span><span data-if="c" style="display:none">prepare_object_model_3d</span><span data-if="cpp" style="display:none">PrepareObjectModel3d</span><span data-if="com" style="display:none">PrepareObjectModel3d</span><span data-if="dotnet" style="display:none">PrepareObjectModel3d</span><span data-if="python" style="display:none">prepare_object_model_3d</span></code>. However, if the
3D object model is to be used multiple times for the same operation, it
can be faster to do so.
</p>
<p>The following values are possible for <a href="#Purpose"><i><code><span data-if="hdevelop" style="display:inline">Purpose</span><span data-if="c" style="display:none">Purpose</span><span data-if="cpp" style="display:none">Purpose</span><span data-if="com" style="display:none">Purpose</span><span data-if="dotnet" style="display:none">purpose</span><span data-if="python" style="display:none">purpose</span></code></i></a>:
</p>
<dl class="generic">

<dt><b><i><span data-if="hdevelop" style="display:inline">'shape_based_matching_3d'</span><span data-if="c" style="display:none">"shape_based_matching_3d"</span><span data-if="cpp" style="display:none">"shape_based_matching_3d"</span><span data-if="com" style="display:none">"shape_based_matching_3d"</span><span data-if="dotnet" style="display:none">"shape_based_matching_3d"</span><span data-if="python" style="display:none">"shape_based_matching_3d"</span></i>:</b></dt>
<dd>
<p>

The 3D object model is prepared to be used in
<a href="create_shape_model_3d.html"><code><span data-if="hdevelop" style="display:inline">create_shape_model_3d</span><span data-if="c" style="display:none">create_shape_model_3d</span><span data-if="cpp" style="display:none">CreateShapeModel3d</span><span data-if="com" style="display:none">CreateShapeModel3d</span><span data-if="dotnet" style="display:none">CreateShapeModel3d</span><span data-if="python" style="display:none">create_shape_model_3d</span></code></a>.  For this, there are no generic
parameters to set.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'segmentation'</span><span data-if="c" style="display:none">"segmentation"</span><span data-if="cpp" style="display:none">"segmentation"</span><span data-if="com" style="display:none">"segmentation"</span><span data-if="dotnet" style="display:none">"segmentation"</span><span data-if="python" style="display:none">"segmentation"</span></i>:</b></dt>
<dd>
<p>

The 3D object model is prepared to be used in
<a href="segment_object_model_3d.html"><code><span data-if="hdevelop" style="display:inline">segment_object_model_3d</span><span data-if="c" style="display:none">segment_object_model_3d</span><span data-if="cpp" style="display:none">SegmentObjectModel3d</span><span data-if="com" style="display:none">SegmentObjectModel3d</span><span data-if="dotnet" style="display:none">SegmentObjectModel3d</span><span data-if="python" style="display:none">segment_object_model_3d</span></code></a>. For the preparation the 3D
object model must have an attribute with the face triangles and
an attribute with the 3D point coordinates.
</p>
<p>If the 3D object model has no attribute with the face triangles, a
simple triangulation is performed (even if <a href="#OverwriteData"><i><code><span data-if="hdevelop" style="display:inline">OverwriteData</span><span data-if="c" style="display:none">OverwriteData</span><span data-if="cpp" style="display:none">OverwriteData</span><span data-if="com" style="display:none">OverwriteData</span><span data-if="dotnet" style="display:none">overwriteData</span><span data-if="python" style="display:none">overwrite_data</span></code></i></a>
is set to <i><span data-if="hdevelop" style="display:inline">'false'</span><span data-if="c" style="display:none">"false"</span><span data-if="cpp" style="display:none">"false"</span><span data-if="com" style="display:none">"false"</span><span data-if="dotnet" style="display:none">"false"</span><span data-if="python" style="display:none">"false"</span></i>). For this, the
3D object model must have an attribute with the 3D point
coordinates and an attribute with the mapping from the point
coordinates to image coordinates. Only points originating from
neighboring pixels are triangulated. Additionally, holes in the
image region can be filled with a Delaunay triangulation
(see <i><span data-if="hdevelop" style="display:inline">'max_area_holes'</span><span data-if="c" style="display:none">"max_area_holes"</span><span data-if="cpp" style="display:none">"max_area_holes"</span><span data-if="com" style="display:none">"max_area_holes"</span><span data-if="dotnet" style="display:none">"max_area_holes"</span><span data-if="python" style="display:none">"max_area_holes"</span></i> below). Only holes which are completely
surrounded by the image region are closed.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'distance_computation'</span><span data-if="c" style="display:none">"distance_computation"</span><span data-if="cpp" style="display:none">"distance_computation"</span><span data-if="com" style="display:none">"distance_computation"</span><span data-if="dotnet" style="display:none">"distance_computation"</span><span data-if="python" style="display:none">"distance_computation"</span></i>:</b></dt>
<dd>
<p>

The 3D object model is prepared to be used in
<a href="distance_object_model_3d.html"><code><span data-if="hdevelop" style="display:inline">distance_object_model_3d</span><span data-if="c" style="display:none">distance_object_model_3d</span><span data-if="cpp" style="display:none">DistanceObjectModel3d</span><span data-if="com" style="display:none">DistanceObjectModel3d</span><span data-if="dotnet" style="display:none">DistanceObjectModel3d</span><span data-if="python" style="display:none">distance_object_model_3d</span></code></a>.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'gen_xyz_mapping'</span><span data-if="c" style="display:none">"gen_xyz_mapping"</span><span data-if="cpp" style="display:none">"gen_xyz_mapping"</span><span data-if="com" style="display:none">"gen_xyz_mapping"</span><span data-if="dotnet" style="display:none">"gen_xyz_mapping"</span><span data-if="python" style="display:none">"gen_xyz_mapping"</span></i>:</b></dt>
<dd>
<p>

The XYZ-mapping information of a 3D object model containing an ordered
point cloud is computed, i.e. image coordinates are assigned for each
3D point. For this, either the generic parameter <i><span data-if="hdevelop" style="display:inline">'xyz_map_width'</span><span data-if="c" style="display:none">"xyz_map_width"</span><span data-if="cpp" style="display:none">"xyz_map_width"</span><span data-if="com" style="display:none">"xyz_map_width"</span><span data-if="dotnet" style="display:none">"xyz_map_width"</span><span data-if="python" style="display:none">"xyz_map_width"</span></i>
or <i><span data-if="hdevelop" style="display:inline">'xyz_map_height'</span><span data-if="c" style="display:none">"xyz_map_height"</span><span data-if="cpp" style="display:none">"xyz_map_height"</span><span data-if="com" style="display:none">"xyz_map_height"</span><span data-if="dotnet" style="display:none">"xyz_map_height"</span><span data-if="python" style="display:none">"xyz_map_height"</span></i> must be set, to indicate whether the point
cloud is ordered row-wise or column-wise and define the image dimensions
(see <i><span data-if="hdevelop" style="display:inline">'xyz_map_width'</span><span data-if="c" style="display:none">"xyz_map_width"</span><span data-if="cpp" style="display:none">"xyz_map_width"</span><span data-if="com" style="display:none">"xyz_map_width"</span><span data-if="dotnet" style="display:none">"xyz_map_width"</span><span data-if="python" style="display:none">"xyz_map_width"</span></i> and <i><span data-if="hdevelop" style="display:inline">'xyz_map_height'</span><span data-if="c" style="display:none">"xyz_map_height"</span><span data-if="cpp" style="display:none">"xyz_map_height"</span><span data-if="com" style="display:none">"xyz_map_height"</span><span data-if="dotnet" style="display:none">"xyz_map_height"</span><span data-if="python" style="display:none">"xyz_map_height"</span></i> below).
</p>
<p>Note that in many cases, it is recommended to use the 2D mapping data,
if available, for speed and robustness reasons. This is beneficial
especially when using <a href="sample_object_model_3d.html"><code><span data-if="hdevelop" style="display:inline">sample_object_model_3d</span><span data-if="c" style="display:none">sample_object_model_3d</span><span data-if="cpp" style="display:none">SampleObjectModel3d</span><span data-if="com" style="display:none">SampleObjectModel3d</span><span data-if="dotnet" style="display:none">SampleObjectModel3d</span><span data-if="python" style="display:none">sample_object_model_3d</span></code></a>,
<a href="surface_normals_object_model_3d.html"><code><span data-if="hdevelop" style="display:inline">surface_normals_object_model_3d</span><span data-if="c" style="display:none">surface_normals_object_model_3d</span><span data-if="cpp" style="display:none">SurfaceNormalsObjectModel3d</span><span data-if="com" style="display:none">SurfaceNormalsObjectModel3d</span><span data-if="dotnet" style="display:none">SurfaceNormalsObjectModel3d</span><span data-if="python" style="display:none">surface_normals_object_model_3d</span></code></a>, or when preparing a 3D object
model for surface-based matching, e.g., smoothing, removing outliers, and
reducing the domain.
</p>
</dd>
</dl>
<p>The parameter <a href="#OverwriteData"><i><code><span data-if="hdevelop" style="display:inline">OverwriteData</span><span data-if="c" style="display:none">OverwriteData</span><span data-if="cpp" style="display:none">OverwriteData</span><span data-if="com" style="display:none">OverwriteData</span><span data-if="dotnet" style="display:none">overwriteData</span><span data-if="python" style="display:none">overwrite_data</span></code></i></a> defines if the existing data
of an already prepared 3D object model shall be removed.  If
<a href="#OverwriteData"><i><code><span data-if="hdevelop" style="display:inline">OverwriteData</span><span data-if="c" style="display:none">OverwriteData</span><span data-if="cpp" style="display:none">OverwriteData</span><span data-if="com" style="display:none">OverwriteData</span><span data-if="dotnet" style="display:none">overwriteData</span><span data-if="python" style="display:none">overwrite_data</span></code></i></a> is set to <i><span data-if="hdevelop" style="display:inline">'true'</span><span data-if="c" style="display:none">"true"</span><span data-if="cpp" style="display:none">"true"</span><span data-if="com" style="display:none">"true"</span><span data-if="dotnet" style="display:none">"true"</span><span data-if="python" style="display:none">"true"</span></i>, the prepared data,
defined with the parameter <a href="#Purpose"><i><code><span data-if="hdevelop" style="display:inline">Purpose</span><span data-if="c" style="display:none">Purpose</span><span data-if="cpp" style="display:none">Purpose</span><span data-if="com" style="display:none">Purpose</span><span data-if="dotnet" style="display:none">purpose</span><span data-if="python" style="display:none">purpose</span></code></i></a>, is overwritten.  If
<a href="#OverwriteData"><i><code><span data-if="hdevelop" style="display:inline">OverwriteData</span><span data-if="c" style="display:none">OverwriteData</span><span data-if="cpp" style="display:none">OverwriteData</span><span data-if="com" style="display:none">OverwriteData</span><span data-if="dotnet" style="display:none">overwriteData</span><span data-if="python" style="display:none">overwrite_data</span></code></i></a> is set to <i><span data-if="hdevelop" style="display:inline">'false'</span><span data-if="c" style="display:none">"false"</span><span data-if="cpp" style="display:none">"false"</span><span data-if="com" style="display:none">"false"</span><span data-if="dotnet" style="display:none">"false"</span><span data-if="python" style="display:none">"false"</span></i>, the prepared data
is not overwritten. If there is no prepared data <a href="#OverwriteData"><i><code><span data-if="hdevelop" style="display:inline">OverwriteData</span><span data-if="c" style="display:none">OverwriteData</span><span data-if="cpp" style="display:none">OverwriteData</span><span data-if="com" style="display:none">OverwriteData</span><span data-if="dotnet" style="display:none">overwriteData</span><span data-if="python" style="display:none">overwrite_data</span></code></i></a>
is ignored and data is saved in a 3D object model.
The parameter <a href="#OverwriteData"><i><code><span data-if="hdevelop" style="display:inline">OverwriteData</span><span data-if="c" style="display:none">OverwriteData</span><span data-if="cpp" style="display:none">OverwriteData</span><span data-if="com" style="display:none">OverwriteData</span><span data-if="dotnet" style="display:none">overwriteData</span><span data-if="python" style="display:none">overwrite_data</span></code></i></a> can be used
for choosing another set of generic parameters <a href="#GenParamName"><i><code><span data-if="hdevelop" style="display:inline">GenParamName</span><span data-if="c" style="display:none">GenParamName</span><span data-if="cpp" style="display:none">GenParamName</span><span data-if="com" style="display:none">GenParamName</span><span data-if="dotnet" style="display:none">genParamName</span><span data-if="python" style="display:none">gen_param_name</span></code></i></a>
and <a href="#GenParamValue"><i><code><span data-if="hdevelop" style="display:inline">GenParamValue</span><span data-if="c" style="display:none">GenParamValue</span><span data-if="cpp" style="display:none">GenParamValue</span><span data-if="com" style="display:none">GenParamValue</span><span data-if="dotnet" style="display:none">genParamValue</span><span data-if="python" style="display:none">gen_param_value</span></code></i></a>.  The parameter <a href="#OverwriteData"><i><code><span data-if="hdevelop" style="display:inline">OverwriteData</span><span data-if="c" style="display:none">OverwriteData</span><span data-if="cpp" style="display:none">OverwriteData</span><span data-if="com" style="display:none">OverwriteData</span><span data-if="dotnet" style="display:none">overwriteData</span><span data-if="python" style="display:none">overwrite_data</span></code></i></a>
has no influence if the parameter <a href="#Purpose"><i><code><span data-if="hdevelop" style="display:inline">Purpose</span><span data-if="c" style="display:none">Purpose</span><span data-if="cpp" style="display:none">Purpose</span><span data-if="com" style="display:none">Purpose</span><span data-if="dotnet" style="display:none">purpose</span><span data-if="python" style="display:none">purpose</span></code></i></a> is
set to <i><span data-if="hdevelop" style="display:inline">'shape_based_matching_3d'</span><span data-if="c" style="display:none">"shape_based_matching_3d"</span><span data-if="cpp" style="display:none">"shape_based_matching_3d"</span><span data-if="com" style="display:none">"shape_based_matching_3d"</span><span data-if="dotnet" style="display:none">"shape_based_matching_3d"</span><span data-if="python" style="display:none">"shape_based_matching_3d"</span></i>, because for that, there
are no generic parameters to set.
</p>
<p>The generic parameters can optionally be used to
influence the preparation.  If desired, these parameters and their
corresponding values can be specified by using <a href="#GenParamName"><i><code><span data-if="hdevelop" style="display:inline">GenParamName</span><span data-if="c" style="display:none">GenParamName</span><span data-if="cpp" style="display:none">GenParamName</span><span data-if="com" style="display:none">GenParamName</span><span data-if="dotnet" style="display:none">genParamName</span><span data-if="python" style="display:none">gen_param_name</span></code></i></a>
and <a href="#GenParamValue"><i><code><span data-if="hdevelop" style="display:inline">GenParamValue</span><span data-if="c" style="display:none">GenParamValue</span><span data-if="cpp" style="display:none">GenParamValue</span><span data-if="com" style="display:none">GenParamValue</span><span data-if="dotnet" style="display:none">genParamValue</span><span data-if="python" style="display:none">gen_param_value</span></code></i></a>, respectively.  The following values for
<a href="#GenParamName"><i><code><span data-if="hdevelop" style="display:inline">GenParamName</span><span data-if="c" style="display:none">GenParamName</span><span data-if="cpp" style="display:none">GenParamName</span><span data-if="com" style="display:none">GenParamName</span><span data-if="dotnet" style="display:none">genParamName</span><span data-if="python" style="display:none">gen_param_name</span></code></i></a> are possible:
</p>
<dl class="generic">


<dt><b><i><span data-if="hdevelop" style="display:inline">'max_area_holes'</span><span data-if="c" style="display:none">"max_area_holes"</span><span data-if="cpp" style="display:none">"max_area_holes"</span><span data-if="com" style="display:none">"max_area_holes"</span><span data-if="dotnet" style="display:none">"max_area_holes"</span><span data-if="python" style="display:none">"max_area_holes"</span></i>:</b></dt>
<dd>
<p>
 This parameter is only valid if
<a href="#Purpose"><i><code><span data-if="hdevelop" style="display:inline">Purpose</span><span data-if="c" style="display:none">Purpose</span><span data-if="cpp" style="display:none">Purpose</span><span data-if="com" style="display:none">Purpose</span><span data-if="dotnet" style="display:none">purpose</span><span data-if="python" style="display:none">purpose</span></code></i></a> is set to <i><span data-if="hdevelop" style="display:inline">'segmentation'</span><span data-if="c" style="display:none">"segmentation"</span><span data-if="cpp" style="display:none">"segmentation"</span><span data-if="com" style="display:none">"segmentation"</span><span data-if="dotnet" style="display:none">"segmentation"</span><span data-if="python" style="display:none">"segmentation"</span></i>. The parameter
specifies which area holes of the point coordinates are closed
during a simple Delaunay triangulation. Only holes which are completely
surrounded by the image region are closed.
If <i><span data-if="hdevelop" style="display:inline">'max_area_holes'</span><span data-if="c" style="display:none">"max_area_holes"</span><span data-if="cpp" style="display:none">"max_area_holes"</span><span data-if="com" style="display:none">"max_area_holes"</span><span data-if="dotnet" style="display:none">"max_area_holes"</span><span data-if="python" style="display:none">"max_area_holes"</span></i> is set to <i>0</i>,
no holes are triangulated.  If the parameter
<i><span data-if="hdevelop" style="display:inline">'max_area_holes'</span><span data-if="c" style="display:none">"max_area_holes"</span><span data-if="cpp" style="display:none">"max_area_holes"</span><span data-if="com" style="display:none">"max_area_holes"</span><span data-if="dotnet" style="display:none">"max_area_holes"</span><span data-if="python" style="display:none">"max_area_holes"</span></i> is set greater or equal than <i>1</i>
pixel, the holes with an area less or equal than
<i><span data-if="hdevelop" style="display:inline">'max_area_holes'</span><span data-if="c" style="display:none">"max_area_holes"</span><span data-if="cpp" style="display:none">"max_area_holes"</span><span data-if="com" style="display:none">"max_area_holes"</span><span data-if="dotnet" style="display:none">"max_area_holes"</span><span data-if="python" style="display:none">"max_area_holes"</span></i> are closed by a meshing.</p>
<p>
<span class="pardesc"><span class="parcat">Suggested values:
      </span></span> <i>1</i>, <i>10</i>, <i>100</i>. </p>
<p>
<span class="pardesc"><span class="parcat">Default:
      </span></span> <i>10</i>.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'distance_to'</span><span data-if="c" style="display:none">"distance_to"</span><span data-if="cpp" style="display:none">"distance_to"</span><span data-if="com" style="display:none">"distance_to"</span><span data-if="dotnet" style="display:none">"distance_to"</span><span data-if="python" style="display:none">"distance_to"</span></i>:</b></dt>
<dd>
<p>
 This parameter is only valid if
<a href="#Purpose"><i><code><span data-if="hdevelop" style="display:inline">Purpose</span><span data-if="c" style="display:none">Purpose</span><span data-if="cpp" style="display:none">Purpose</span><span data-if="com" style="display:none">Purpose</span><span data-if="dotnet" style="display:none">purpose</span><span data-if="python" style="display:none">purpose</span></code></i></a> is set to <i><span data-if="hdevelop" style="display:inline">'distance_computation'</span><span data-if="c" style="display:none">"distance_computation"</span><span data-if="cpp" style="display:none">"distance_computation"</span><span data-if="com" style="display:none">"distance_computation"</span><span data-if="dotnet" style="display:none">"distance_computation"</span><span data-if="python" style="display:none">"distance_computation"</span></i>.
The parameter specifies the type of data to which the distance shall be
computed to.
It is described in more detail in the documentation of
<a href="distance_object_model_3d.html"><code><span data-if="hdevelop" style="display:inline">distance_object_model_3d</span><span data-if="c" style="display:none">distance_object_model_3d</span><span data-if="cpp" style="display:none">DistanceObjectModel3d</span><span data-if="com" style="display:none">DistanceObjectModel3d</span><span data-if="dotnet" style="display:none">DistanceObjectModel3d</span><span data-if="python" style="display:none">distance_object_model_3d</span></code></a>.</p>
<p>
<span class="pardesc"><span class="parcat">List of values:
      </span></span> <i><span data-if="hdevelop" style="display:inline">'auto'</span><span data-if="c" style="display:none">"auto"</span><span data-if="cpp" style="display:none">"auto"</span><span data-if="com" style="display:none">"auto"</span><span data-if="dotnet" style="display:none">"auto"</span><span data-if="python" style="display:none">"auto"</span></i>, <i><span data-if="hdevelop" style="display:inline">'triangles'</span><span data-if="c" style="display:none">"triangles"</span><span data-if="cpp" style="display:none">"triangles"</span><span data-if="com" style="display:none">"triangles"</span><span data-if="dotnet" style="display:none">"triangles"</span><span data-if="python" style="display:none">"triangles"</span></i>,
<i><span data-if="hdevelop" style="display:inline">'points'</span><span data-if="c" style="display:none">"points"</span><span data-if="cpp" style="display:none">"points"</span><span data-if="com" style="display:none">"points"</span><span data-if="dotnet" style="display:none">"points"</span><span data-if="python" style="display:none">"points"</span></i>, <i><span data-if="hdevelop" style="display:inline">'primitive'</span><span data-if="c" style="display:none">"primitive"</span><span data-if="cpp" style="display:none">"primitive"</span><span data-if="com" style="display:none">"primitive"</span><span data-if="dotnet" style="display:none">"primitive"</span><span data-if="python" style="display:none">"primitive"</span></i>. </p>
<p>
<span class="pardesc"><span class="parcat">Default:
      </span></span> <i><span data-if="hdevelop" style="display:inline">'auto'</span><span data-if="c" style="display:none">"auto"</span><span data-if="cpp" style="display:none">"auto"</span><span data-if="com" style="display:none">"auto"</span><span data-if="dotnet" style="display:none">"auto"</span><span data-if="python" style="display:none">"auto"</span></i>.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'method'</span><span data-if="c" style="display:none">"method"</span><span data-if="cpp" style="display:none">"method"</span><span data-if="com" style="display:none">"method"</span><span data-if="dotnet" style="display:none">"method"</span><span data-if="python" style="display:none">"method"</span></i>:</b></dt>
<dd>
<p>
 This parameter is only valid if
<a href="#Purpose"><i><code><span data-if="hdevelop" style="display:inline">Purpose</span><span data-if="c" style="display:none">Purpose</span><span data-if="cpp" style="display:none">Purpose</span><span data-if="com" style="display:none">Purpose</span><span data-if="dotnet" style="display:none">purpose</span><span data-if="python" style="display:none">purpose</span></code></i></a> is set to <i><span data-if="hdevelop" style="display:inline">'distance_computation'</span><span data-if="c" style="display:none">"distance_computation"</span><span data-if="cpp" style="display:none">"distance_computation"</span><span data-if="com" style="display:none">"distance_computation"</span><span data-if="dotnet" style="display:none">"distance_computation"</span><span data-if="python" style="display:none">"distance_computation"</span></i>.
The parameter specifies the method to be used for the distance computation.
It is described in more detail in the documentation of
<a href="distance_object_model_3d.html"><code><span data-if="hdevelop" style="display:inline">distance_object_model_3d</span><span data-if="c" style="display:none">distance_object_model_3d</span><span data-if="cpp" style="display:none">DistanceObjectModel3d</span><span data-if="com" style="display:none">DistanceObjectModel3d</span><span data-if="dotnet" style="display:none">DistanceObjectModel3d</span><span data-if="python" style="display:none">distance_object_model_3d</span></code></a>.</p>
<p>
<span class="pardesc"><span class="parcat">List of values:
      </span></span> <i><span data-if="hdevelop" style="display:inline">'auto'</span><span data-if="c" style="display:none">"auto"</span><span data-if="cpp" style="display:none">"auto"</span><span data-if="com" style="display:none">"auto"</span><span data-if="dotnet" style="display:none">"auto"</span><span data-if="python" style="display:none">"auto"</span></i>, <i><span data-if="hdevelop" style="display:inline">'kd-tree'</span><span data-if="c" style="display:none">"kd-tree"</span><span data-if="cpp" style="display:none">"kd-tree"</span><span data-if="com" style="display:none">"kd-tree"</span><span data-if="dotnet" style="display:none">"kd-tree"</span><span data-if="python" style="display:none">"kd-tree"</span></i>,
<i><span data-if="hdevelop" style="display:inline">'voxel'</span><span data-if="c" style="display:none">"voxel"</span><span data-if="cpp" style="display:none">"voxel"</span><span data-if="com" style="display:none">"voxel"</span><span data-if="dotnet" style="display:none">"voxel"</span><span data-if="python" style="display:none">"voxel"</span></i>, <i><span data-if="hdevelop" style="display:inline">'linear'</span><span data-if="c" style="display:none">"linear"</span><span data-if="cpp" style="display:none">"linear"</span><span data-if="com" style="display:none">"linear"</span><span data-if="dotnet" style="display:none">"linear"</span><span data-if="python" style="display:none">"linear"</span></i>. </p>
<p>
<span class="pardesc"><span class="parcat">Default:
      </span></span> <i><span data-if="hdevelop" style="display:inline">'auto'</span><span data-if="c" style="display:none">"auto"</span><span data-if="cpp" style="display:none">"auto"</span><span data-if="com" style="display:none">"auto"</span><span data-if="dotnet" style="display:none">"auto"</span><span data-if="python" style="display:none">"auto"</span></i>.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'max_distance'</span><span data-if="c" style="display:none">"max_distance"</span><span data-if="cpp" style="display:none">"max_distance"</span><span data-if="com" style="display:none">"max_distance"</span><span data-if="dotnet" style="display:none">"max_distance"</span><span data-if="python" style="display:none">"max_distance"</span></i>:</b></dt>
<dd>
<p>
 This parameter is only valid if
<a href="#Purpose"><i><code><span data-if="hdevelop" style="display:inline">Purpose</span><span data-if="c" style="display:none">Purpose</span><span data-if="cpp" style="display:none">Purpose</span><span data-if="com" style="display:none">Purpose</span><span data-if="dotnet" style="display:none">purpose</span><span data-if="python" style="display:none">purpose</span></code></i></a> is set to <i><span data-if="hdevelop" style="display:inline">'distance_computation'</span><span data-if="c" style="display:none">"distance_computation"</span><span data-if="cpp" style="display:none">"distance_computation"</span><span data-if="com" style="display:none">"distance_computation"</span><span data-if="dotnet" style="display:none">"distance_computation"</span><span data-if="python" style="display:none">"distance_computation"</span></i>.
The parameter specifies the maximum distance of interest for the
distance computation. If it is set to <i>0</i>, no maximum distance
is used.
It is described in more detail in the documentation of
<a href="distance_object_model_3d.html"><code><span data-if="hdevelop" style="display:inline">distance_object_model_3d</span><span data-if="c" style="display:none">distance_object_model_3d</span><span data-if="cpp" style="display:none">DistanceObjectModel3d</span><span data-if="com" style="display:none">DistanceObjectModel3d</span><span data-if="dotnet" style="display:none">DistanceObjectModel3d</span><span data-if="python" style="display:none">distance_object_model_3d</span></code></a>.</p>
<p>
<span class="pardesc"><span class="parcat">Suggested values:
      </span></span> <i>0</i>, <i>0.1</i>,
<i>1</i>, <i>10</i>. </p>
<p>
<span class="pardesc"><span class="parcat">Default:
      </span></span> <i>0</i>.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'sampling_dist_rel'</span><span data-if="c" style="display:none">"sampling_dist_rel"</span><span data-if="cpp" style="display:none">"sampling_dist_rel"</span><span data-if="com" style="display:none">"sampling_dist_rel"</span><span data-if="dotnet" style="display:none">"sampling_dist_rel"</span><span data-if="python" style="display:none">"sampling_dist_rel"</span></i>:</b></dt>
<dd>
<p>
 This parameter is only valid if
<a href="#Purpose"><i><code><span data-if="hdevelop" style="display:inline">Purpose</span><span data-if="c" style="display:none">Purpose</span><span data-if="cpp" style="display:none">Purpose</span><span data-if="com" style="display:none">Purpose</span><span data-if="dotnet" style="display:none">purpose</span><span data-if="python" style="display:none">purpose</span></code></i></a> is set to <i><span data-if="hdevelop" style="display:inline">'distance_computation'</span><span data-if="c" style="display:none">"distance_computation"</span><span data-if="cpp" style="display:none">"distance_computation"</span><span data-if="com" style="display:none">"distance_computation"</span><span data-if="dotnet" style="display:none">"distance_computation"</span><span data-if="python" style="display:none">"distance_computation"</span></i>.
The parameter specifies the relative sampling distance when computing
the distance to triangles with the method <i><span data-if="hdevelop" style="display:inline">'voxel'</span><span data-if="c" style="display:none">"voxel"</span><span data-if="cpp" style="display:none">"voxel"</span><span data-if="com" style="display:none">"voxel"</span><span data-if="dotnet" style="display:none">"voxel"</span><span data-if="python" style="display:none">"voxel"</span></i>.
It is described in more detail in the documentation of
<a href="distance_object_model_3d.html"><code><span data-if="hdevelop" style="display:inline">distance_object_model_3d</span><span data-if="c" style="display:none">distance_object_model_3d</span><span data-if="cpp" style="display:none">DistanceObjectModel3d</span><span data-if="com" style="display:none">DistanceObjectModel3d</span><span data-if="dotnet" style="display:none">DistanceObjectModel3d</span><span data-if="python" style="display:none">distance_object_model_3d</span></code></a>.</p>
<p>
<span class="pardesc"><span class="parcat">Suggested values:
      </span></span> <i>0.03</i>, <i>0.01</i>. </p>
<p>
<span class="pardesc"><span class="parcat">Default:
      </span></span> <i>0.03</i>.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'sampling_dist_abs'</span><span data-if="c" style="display:none">"sampling_dist_abs"</span><span data-if="cpp" style="display:none">"sampling_dist_abs"</span><span data-if="com" style="display:none">"sampling_dist_abs"</span><span data-if="dotnet" style="display:none">"sampling_dist_abs"</span><span data-if="python" style="display:none">"sampling_dist_abs"</span></i>:</b></dt>
<dd>
<p>
 This parameter is only valid if
<a href="#Purpose"><i><code><span data-if="hdevelop" style="display:inline">Purpose</span><span data-if="c" style="display:none">Purpose</span><span data-if="cpp" style="display:none">Purpose</span><span data-if="com" style="display:none">Purpose</span><span data-if="dotnet" style="display:none">purpose</span><span data-if="python" style="display:none">purpose</span></code></i></a> is set to <i><span data-if="hdevelop" style="display:inline">'distance_computation'</span><span data-if="c" style="display:none">"distance_computation"</span><span data-if="cpp" style="display:none">"distance_computation"</span><span data-if="com" style="display:none">"distance_computation"</span><span data-if="dotnet" style="display:none">"distance_computation"</span><span data-if="python" style="display:none">"distance_computation"</span></i>.
The parameter specifies the absolute sampling distance when computing
the distance to triangles with the method <i><span data-if="hdevelop" style="display:inline">'voxel'</span><span data-if="c" style="display:none">"voxel"</span><span data-if="cpp" style="display:none">"voxel"</span><span data-if="com" style="display:none">"voxel"</span><span data-if="dotnet" style="display:none">"voxel"</span><span data-if="python" style="display:none">"voxel"</span></i>.
It is described in more detail in the documentation of
<a href="distance_object_model_3d.html"><code><span data-if="hdevelop" style="display:inline">distance_object_model_3d</span><span data-if="c" style="display:none">distance_object_model_3d</span><span data-if="cpp" style="display:none">DistanceObjectModel3d</span><span data-if="com" style="display:none">DistanceObjectModel3d</span><span data-if="dotnet" style="display:none">DistanceObjectModel3d</span><span data-if="python" style="display:none">distance_object_model_3d</span></code></a>.</p>
<p>
<span class="pardesc"><span class="parcat">Suggested values:
      </span></span> <i>1</i>, <i>5</i>, <i>10</i>. </p>
<p>
<span class="pardesc"><span class="parcat">Default:
      </span></span> None.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'xyz_map_width'</span><span data-if="c" style="display:none">"xyz_map_width"</span><span data-if="cpp" style="display:none">"xyz_map_width"</span><span data-if="com" style="display:none">"xyz_map_width"</span><span data-if="dotnet" style="display:none">"xyz_map_width"</span><span data-if="python" style="display:none">"xyz_map_width"</span></i>:</b></dt>
<dd>
<p>
 This parameter is only valid if
<a href="#Purpose"><i><code><span data-if="hdevelop" style="display:inline">Purpose</span><span data-if="c" style="display:none">Purpose</span><span data-if="cpp" style="display:none">Purpose</span><span data-if="com" style="display:none">Purpose</span><span data-if="dotnet" style="display:none">purpose</span><span data-if="python" style="display:none">purpose</span></code></i></a> is set to <i><span data-if="hdevelop" style="display:inline">'gen_xyz_mapping'</span><span data-if="c" style="display:none">"gen_xyz_mapping"</span><span data-if="cpp" style="display:none">"gen_xyz_mapping"</span><span data-if="com" style="display:none">"gen_xyz_mapping"</span><span data-if="dotnet" style="display:none">"gen_xyz_mapping"</span><span data-if="python" style="display:none">"gen_xyz_mapping"</span></i>. The parameter
indicates that the point cloud is ordered row-wise and the passed
value is used as the width of the image. The height of the image is
calculated automatically. Only one of the two parameters
<i><span data-if="hdevelop" style="display:inline">'xyz_map_width'</span><span data-if="c" style="display:none">"xyz_map_width"</span><span data-if="cpp" style="display:none">"xyz_map_width"</span><span data-if="com" style="display:none">"xyz_map_width"</span><span data-if="dotnet" style="display:none">"xyz_map_width"</span><span data-if="python" style="display:none">"xyz_map_width"</span></i> and <i><span data-if="hdevelop" style="display:inline">'xyz_map_height'</span><span data-if="c" style="display:none">"xyz_map_height"</span><span data-if="cpp" style="display:none">"xyz_map_height"</span><span data-if="com" style="display:none">"xyz_map_height"</span><span data-if="dotnet" style="display:none">"xyz_map_height"</span><span data-if="python" style="display:none">"xyz_map_height"</span></i> can be set.</p>
<p>
<span class="pardesc"><span class="parcat">Default:
      </span></span> None.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'xyz_map_height'</span><span data-if="c" style="display:none">"xyz_map_height"</span><span data-if="cpp" style="display:none">"xyz_map_height"</span><span data-if="com" style="display:none">"xyz_map_height"</span><span data-if="dotnet" style="display:none">"xyz_map_height"</span><span data-if="python" style="display:none">"xyz_map_height"</span></i>:</b></dt>
<dd>
<p>
 This parameter is only valid if
<a href="#Purpose"><i><code><span data-if="hdevelop" style="display:inline">Purpose</span><span data-if="c" style="display:none">Purpose</span><span data-if="cpp" style="display:none">Purpose</span><span data-if="com" style="display:none">Purpose</span><span data-if="dotnet" style="display:none">purpose</span><span data-if="python" style="display:none">purpose</span></code></i></a> is set to <i><span data-if="hdevelop" style="display:inline">'gen_xyz_mapping'</span><span data-if="c" style="display:none">"gen_xyz_mapping"</span><span data-if="cpp" style="display:none">"gen_xyz_mapping"</span><span data-if="com" style="display:none">"gen_xyz_mapping"</span><span data-if="dotnet" style="display:none">"gen_xyz_mapping"</span><span data-if="python" style="display:none">"gen_xyz_mapping"</span></i>. The parameter
indicates that the point cloud is ordered column-wise and the passed
value is used as the height of the image. The width of the image is
calculated automatically. Only one of the two parameters
<i><span data-if="hdevelop" style="display:inline">'xyz_map_width'</span><span data-if="c" style="display:none">"xyz_map_width"</span><span data-if="cpp" style="display:none">"xyz_map_width"</span><span data-if="com" style="display:none">"xyz_map_width"</span><span data-if="dotnet" style="display:none">"xyz_map_width"</span><span data-if="python" style="display:none">"xyz_map_width"</span></i> and <i><span data-if="hdevelop" style="display:inline">'xyz_map_height'</span><span data-if="c" style="display:none">"xyz_map_height"</span><span data-if="cpp" style="display:none">"xyz_map_height"</span><span data-if="com" style="display:none">"xyz_map_height"</span><span data-if="dotnet" style="display:none">"xyz_map_height"</span><span data-if="python" style="display:none">"xyz_map_height"</span></i> can be set.</p>
<p>
<span class="pardesc"><span class="parcat">Default:
      </span></span> None.
</p>
</dd>
</dl>
<h2 id="sec_execution">运行信息</h2>
<ul>
  <li>多线程类型:可重入(与非独占操作符并行运行)。</li>
<li>多线程作用域:全局(可以从任何线程调用)。</li>
  <li>未经并行化处理。</li>
</ul>
<h2 id="sec_parameters">参数表</h2>
  <div class="par">
<div class="parhead">
<span id="ObjectModel3D" class="parname"><b><code><span data-if="hdevelop" style="display:inline">ObjectModel3D</span><span data-if="c" style="display:none">ObjectModel3D</span><span data-if="cpp" style="display:none">ObjectModel3D</span><span data-if="com" style="display:none">ObjectModel3D</span><span data-if="dotnet" style="display:none">objectModel3D</span><span data-if="python" style="display:none">object_model_3d</span></code></b> (input_control)  </span><span>object_model_3d(-array) <code>→</code> <span data-if="dotnet" style="display:none"><a href="HObjectModel3D.html">HObjectModel3D</a>, </span><span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">MaybeSequence[HHandle]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (handle)</span><span data-if="dotnet" style="display:none"> (<i>IntPtr</i>)</span><span data-if="cpp" style="display:none"> (<i>HHandle</i>)</span><span data-if="c" style="display:none"> (<i>handle</i>)</span></span>
</div>
<p class="pardesc">Handle of the 3D object model.</p>
</div>
  <div class="par">
<div class="parhead">
<span id="Purpose" class="parname"><b><code><span data-if="hdevelop" style="display:inline">Purpose</span><span data-if="c" style="display:none">Purpose</span><span data-if="cpp" style="display:none">Purpose</span><span data-if="com" style="display:none">Purpose</span><span data-if="dotnet" style="display:none">purpose</span><span data-if="python" style="display:none">purpose</span></code></b> (input_control)  </span><span>string <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">str</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string)</span><span data-if="dotnet" style="display:none"> (<i>string</i>)</span><span data-if="cpp" style="display:none"> (<i>HString</i>)</span><span data-if="c" style="display:none"> (<i>char*</i>)</span></span>
</div>
<p class="pardesc">Purpose of the 3D object model.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'shape_based_matching_3d'</span>
    <span data-if="c" style="display:none">"shape_based_matching_3d"</span>
    <span data-if="cpp" style="display:none">"shape_based_matching_3d"</span>
    <span data-if="com" style="display:none">"shape_based_matching_3d"</span>
    <span data-if="dotnet" style="display:none">"shape_based_matching_3d"</span>
    <span data-if="python" style="display:none">"shape_based_matching_3d"</span>
</p>
<p class="pardesc"><span class="parcat">Suggested values:
      </span><span data-if="hdevelop" style="display:inline">'shape_based_matching_3d'</span><span data-if="c" style="display:none">"shape_based_matching_3d"</span><span data-if="cpp" style="display:none">"shape_based_matching_3d"</span><span data-if="com" style="display:none">"shape_based_matching_3d"</span><span data-if="dotnet" style="display:none">"shape_based_matching_3d"</span><span data-if="python" style="display:none">"shape_based_matching_3d"</span>, <span data-if="hdevelop" style="display:inline">'segmentation'</span><span data-if="c" style="display:none">"segmentation"</span><span data-if="cpp" style="display:none">"segmentation"</span><span data-if="com" style="display:none">"segmentation"</span><span data-if="dotnet" style="display:none">"segmentation"</span><span data-if="python" style="display:none">"segmentation"</span>, <span data-if="hdevelop" style="display:inline">'distance_computation'</span><span data-if="c" style="display:none">"distance_computation"</span><span data-if="cpp" style="display:none">"distance_computation"</span><span data-if="com" style="display:none">"distance_computation"</span><span data-if="dotnet" style="display:none">"distance_computation"</span><span data-if="python" style="display:none">"distance_computation"</span>, <span data-if="hdevelop" style="display:inline">'gen_xyz_mapping'</span><span data-if="c" style="display:none">"gen_xyz_mapping"</span><span data-if="cpp" style="display:none">"gen_xyz_mapping"</span><span data-if="com" style="display:none">"gen_xyz_mapping"</span><span data-if="dotnet" style="display:none">"gen_xyz_mapping"</span><span data-if="python" style="display:none">"gen_xyz_mapping"</span></p>
</div>
  <div class="par">
<div class="parhead">
<span id="OverwriteData" class="parname"><b><code><span data-if="hdevelop" style="display:inline">OverwriteData</span><span data-if="c" style="display:none">OverwriteData</span><span data-if="cpp" style="display:none">OverwriteData</span><span data-if="com" style="display:none">OverwriteData</span><span data-if="dotnet" style="display:none">overwriteData</span><span data-if="python" style="display:none">overwrite_data</span></code></b> (input_control)  </span><span>string <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">str</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string)</span><span data-if="dotnet" style="display:none"> (<i>string</i>)</span><span data-if="cpp" style="display:none"> (<i>HString</i>)</span><span data-if="c" style="display:none"> (<i>char*</i>)</span></span>
</div>
<p class="pardesc">Specify if already existing data should be overwritten.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'true'</span>
    <span data-if="c" style="display:none">"true"</span>
    <span data-if="cpp" style="display:none">"true"</span>
    <span data-if="com" style="display:none">"true"</span>
    <span data-if="dotnet" style="display:none">"true"</span>
    <span data-if="python" style="display:none">"true"</span>
</p>
<p class="pardesc"><span class="parcat">List of values:
      </span><span data-if="hdevelop" style="display:inline">'false'</span><span data-if="c" style="display:none">"false"</span><span data-if="cpp" style="display:none">"false"</span><span data-if="com" style="display:none">"false"</span><span data-if="dotnet" style="display:none">"false"</span><span data-if="python" style="display:none">"false"</span>, <span data-if="hdevelop" style="display:inline">'true'</span><span data-if="c" style="display:none">"true"</span><span data-if="cpp" style="display:none">"true"</span><span data-if="com" style="display:none">"true"</span><span data-if="dotnet" style="display:none">"true"</span><span data-if="python" style="display:none">"true"</span></p>
</div>
  <div class="par">
<div class="parhead">
<span id="GenParamName" class="parname"><b><code><span data-if="hdevelop" style="display:inline">GenParamName</span><span data-if="c" style="display:none">GenParamName</span><span data-if="cpp" style="display:none">GenParamName</span><span data-if="com" style="display:none">GenParamName</span><span data-if="dotnet" style="display:none">genParamName</span><span data-if="python" style="display:none">gen_param_name</span></code></b> (input_control)  </span><span>attribute.name-array <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">Sequence[Union[str, float, int]]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string / </span><span data-if="hdevelop" style="display:inline">real / </span><span data-if="hdevelop" style="display:inline">integer)</span><span data-if="dotnet" style="display:none"> (<i>string</i> / </span><span data-if="dotnet" style="display:none">double / </span><span data-if="dotnet" style="display:none">int / </span><span data-if="dotnet" style="display:none">long)</span><span data-if="cpp" style="display:none"> (<i>HString</i> / </span><span data-if="cpp" style="display:none">double / </span><span data-if="cpp" style="display:none">Hlong)</span><span data-if="c" style="display:none"> (<i>char*</i> / </span><span data-if="c" style="display:none">double / </span><span data-if="c" style="display:none">Hlong)</span></span>
</div>
<p class="pardesc">Names of the generic parameters.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>[]</p>
<p class="pardesc"><span class="parcat">List of values:
      </span><span data-if="hdevelop" style="display:inline">'distance_to'</span><span data-if="c" style="display:none">"distance_to"</span><span data-if="cpp" style="display:none">"distance_to"</span><span data-if="com" style="display:none">"distance_to"</span><span data-if="dotnet" style="display:none">"distance_to"</span><span data-if="python" style="display:none">"distance_to"</span>, <span data-if="hdevelop" style="display:inline">'max_area_holes'</span><span data-if="c" style="display:none">"max_area_holes"</span><span data-if="cpp" style="display:none">"max_area_holes"</span><span data-if="com" style="display:none">"max_area_holes"</span><span data-if="dotnet" style="display:none">"max_area_holes"</span><span data-if="python" style="display:none">"max_area_holes"</span>, <span data-if="hdevelop" style="display:inline">'max_distance'</span><span data-if="c" style="display:none">"max_distance"</span><span data-if="cpp" style="display:none">"max_distance"</span><span data-if="com" style="display:none">"max_distance"</span><span data-if="dotnet" style="display:none">"max_distance"</span><span data-if="python" style="display:none">"max_distance"</span>, <span data-if="hdevelop" style="display:inline">'method'</span><span data-if="c" style="display:none">"method"</span><span data-if="cpp" style="display:none">"method"</span><span data-if="com" style="display:none">"method"</span><span data-if="dotnet" style="display:none">"method"</span><span data-if="python" style="display:none">"method"</span>, <span data-if="hdevelop" style="display:inline">'sampling_dist_abs'</span><span data-if="c" style="display:none">"sampling_dist_abs"</span><span data-if="cpp" style="display:none">"sampling_dist_abs"</span><span data-if="com" style="display:none">"sampling_dist_abs"</span><span data-if="dotnet" style="display:none">"sampling_dist_abs"</span><span data-if="python" style="display:none">"sampling_dist_abs"</span>, <span data-if="hdevelop" style="display:inline">'sampling_dist_rel'</span><span data-if="c" style="display:none">"sampling_dist_rel"</span><span data-if="cpp" style="display:none">"sampling_dist_rel"</span><span data-if="com" style="display:none">"sampling_dist_rel"</span><span data-if="dotnet" style="display:none">"sampling_dist_rel"</span><span data-if="python" style="display:none">"sampling_dist_rel"</span>, <span data-if="hdevelop" style="display:inline">'xyz_map_height'</span><span data-if="c" style="display:none">"xyz_map_height"</span><span data-if="cpp" style="display:none">"xyz_map_height"</span><span data-if="com" style="display:none">"xyz_map_height"</span><span data-if="dotnet" style="display:none">"xyz_map_height"</span><span data-if="python" style="display:none">"xyz_map_height"</span>, <span data-if="hdevelop" style="display:inline">'xyz_map_width'</span><span data-if="c" style="display:none">"xyz_map_width"</span><span data-if="cpp" style="display:none">"xyz_map_width"</span><span data-if="com" style="display:none">"xyz_map_width"</span><span data-if="dotnet" style="display:none">"xyz_map_width"</span><span data-if="python" style="display:none">"xyz_map_width"</span></p>
</div>
  <div class="par">
<div class="parhead">
<span id="GenParamValue" class="parname"><b><code><span data-if="hdevelop" style="display:inline">GenParamValue</span><span data-if="c" style="display:none">GenParamValue</span><span data-if="cpp" style="display:none">GenParamValue</span><span data-if="com" style="display:none">GenParamValue</span><span data-if="dotnet" style="display:none">genParamValue</span><span data-if="python" style="display:none">gen_param_value</span></code></b> (input_control)  </span><span>attribute.value-array <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">Sequence[Union[str, float, int]]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string / </span><span data-if="hdevelop" style="display:inline">real / </span><span data-if="hdevelop" style="display:inline">integer)</span><span data-if="dotnet" style="display:none"> (<i>string</i> / </span><span data-if="dotnet" style="display:none">double / </span><span data-if="dotnet" style="display:none">int / </span><span data-if="dotnet" style="display:none">long)</span><span data-if="cpp" style="display:none"> (<i>HString</i> / </span><span data-if="cpp" style="display:none">double / </span><span data-if="cpp" style="display:none">Hlong)</span><span data-if="c" style="display:none"> (<i>char*</i> / </span><span data-if="c" style="display:none">double / </span><span data-if="c" style="display:none">Hlong)</span></span>
</div>
<p class="pardesc">Values of the generic parameters.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>[]</p>
<p class="pardesc"><span class="parcat">Suggested values:
      </span>0, 1, 100, <span data-if="hdevelop" style="display:inline">'auto'</span><span data-if="c" style="display:none">"auto"</span><span data-if="cpp" style="display:none">"auto"</span><span data-if="com" style="display:none">"auto"</span><span data-if="dotnet" style="display:none">"auto"</span><span data-if="python" style="display:none">"auto"</span>, <span data-if="hdevelop" style="display:inline">'triangles'</span><span data-if="c" style="display:none">"triangles"</span><span data-if="cpp" style="display:none">"triangles"</span><span data-if="com" style="display:none">"triangles"</span><span data-if="dotnet" style="display:none">"triangles"</span><span data-if="python" style="display:none">"triangles"</span>, <span data-if="hdevelop" style="display:inline">'points'</span><span data-if="c" style="display:none">"points"</span><span data-if="cpp" style="display:none">"points"</span><span data-if="com" style="display:none">"points"</span><span data-if="dotnet" style="display:none">"points"</span><span data-if="python" style="display:none">"points"</span>, <span data-if="hdevelop" style="display:inline">'primitive'</span><span data-if="c" style="display:none">"primitive"</span><span data-if="cpp" style="display:none">"primitive"</span><span data-if="com" style="display:none">"primitive"</span><span data-if="dotnet" style="display:none">"primitive"</span><span data-if="python" style="display:none">"primitive"</span>, <span data-if="hdevelop" style="display:inline">'kd-tree'</span><span data-if="c" style="display:none">"kd-tree"</span><span data-if="cpp" style="display:none">"kd-tree"</span><span data-if="com" style="display:none">"kd-tree"</span><span data-if="dotnet" style="display:none">"kd-tree"</span><span data-if="python" style="display:none">"kd-tree"</span>, <span data-if="hdevelop" style="display:inline">'voxel'</span><span data-if="c" style="display:none">"voxel"</span><span data-if="cpp" style="display:none">"voxel"</span><span data-if="com" style="display:none">"voxel"</span><span data-if="dotnet" style="display:none">"voxel"</span><span data-if="python" style="display:none">"voxel"</span>, <span data-if="hdevelop" style="display:inline">'linear'</span><span data-if="c" style="display:none">"linear"</span><span data-if="cpp" style="display:none">"linear"</span><span data-if="com" style="display:none">"linear"</span><span data-if="dotnet" style="display:none">"linear"</span><span data-if="python" style="display:none">"linear"</span>, 0.01, 0.03</p>
</div>
<h2 id="sec_example_all">例程 (HDevelop)</h2>
<pre class="example">
read_object_model_3d ('object_model_3d', 'm', [], [], ObjectModel3D, Status)
prepare_object_model_3d (ObjectModel3D, 'gen_xyz_mapping', 'true',\
                         'xyz_map_width', Width)
object_model_3d_to_xyz (X, Y, Z, ObjectModel3D, 'from_xyz_map', [], [])
</pre>
<h2 id="sec_result">结果</h2>
<p>该算子 <code><span data-if="hdevelop" style="display:inline">prepare_object_model_3d</span><span data-if="c" style="display:none">prepare_object_model_3d</span><span data-if="cpp" style="display:none">PrepareObjectModel3d</span><span data-if="com" style="display:none">PrepareObjectModel3d</span><span data-if="dotnet" style="display:none">PrepareObjectModel3d</span><span data-if="python" style="display:none">prepare_object_model_3d</span></code> 返回值
<TT>2</TT> (
      <TT>H_MSG_TRUE</TT>)
     if the given parameters are correct.  Otherwise, an exception
will be raised.</p>
<h2 id="sec_predecessors">可能的前置算子</h2>
<p>
<code><a href="read_object_model_3d.html"><span data-if="hdevelop" style="display:inline">read_object_model_3d</span><span data-if="c" style="display:none">read_object_model_3d</span><span data-if="cpp" style="display:none">ReadObjectModel3d</span><span data-if="com" style="display:none">ReadObjectModel3d</span><span data-if="dotnet" style="display:none">ReadObjectModel3d</span><span data-if="python" style="display:none">read_object_model_3d</span></a></code>, 
<code><a href="xyz_to_object_model_3d.html"><span data-if="hdevelop" style="display:inline">xyz_to_object_model_3d</span><span data-if="c" style="display:none">xyz_to_object_model_3d</span><span data-if="cpp" style="display:none">XyzToObjectModel3d</span><span data-if="com" style="display:none">XyzToObjectModel3d</span><span data-if="dotnet" style="display:none">XyzToObjectModel3d</span><span data-if="python" style="display:none">xyz_to_object_model_3d</span></a></code>
</p>
<h2 id="sec_successors">可能的后置算子</h2>
<p>
<code><a href="create_shape_model_3d.html"><span data-if="hdevelop" style="display:inline">create_shape_model_3d</span><span data-if="c" style="display:none">create_shape_model_3d</span><span data-if="cpp" style="display:none">CreateShapeModel3d</span><span data-if="com" style="display:none">CreateShapeModel3d</span><span data-if="dotnet" style="display:none">CreateShapeModel3d</span><span data-if="python" style="display:none">create_shape_model_3d</span></a></code>, 
<code><a href="create_surface_model.html"><span data-if="hdevelop" style="display:inline">create_surface_model</span><span data-if="c" style="display:none">create_surface_model</span><span data-if="cpp" style="display:none">CreateSurfaceModel</span><span data-if="com" style="display:none">CreateSurfaceModel</span><span data-if="dotnet" style="display:none">CreateSurfaceModel</span><span data-if="python" style="display:none">create_surface_model</span></a></code>, 
<code><a href="distance_object_model_3d.html"><span data-if="hdevelop" style="display:inline">distance_object_model_3d</span><span data-if="c" style="display:none">distance_object_model_3d</span><span data-if="cpp" style="display:none">DistanceObjectModel3d</span><span data-if="com" style="display:none">DistanceObjectModel3d</span><span data-if="dotnet" style="display:none">DistanceObjectModel3d</span><span data-if="python" style="display:none">distance_object_model_3d</span></a></code>, 
<code><a href="find_surface_model.html"><span data-if="hdevelop" style="display:inline">find_surface_model</span><span data-if="c" style="display:none">find_surface_model</span><span data-if="cpp" style="display:none">FindSurfaceModel</span><span data-if="com" style="display:none">FindSurfaceModel</span><span data-if="dotnet" style="display:none">FindSurfaceModel</span><span data-if="python" style="display:none">find_surface_model</span></a></code>, 
<code><a href="fit_primitives_object_model_3d.html"><span data-if="hdevelop" style="display:inline">fit_primitives_object_model_3d</span><span data-if="c" style="display:none">fit_primitives_object_model_3d</span><span data-if="cpp" style="display:none">FitPrimitivesObjectModel3d</span><span data-if="com" style="display:none">FitPrimitivesObjectModel3d</span><span data-if="dotnet" style="display:none">FitPrimitivesObjectModel3d</span><span data-if="python" style="display:none">fit_primitives_object_model_3d</span></a></code>, 
<code><a href="refine_surface_model_pose.html"><span data-if="hdevelop" style="display:inline">refine_surface_model_pose</span><span data-if="c" style="display:none">refine_surface_model_pose</span><span data-if="cpp" style="display:none">RefineSurfaceModelPose</span><span data-if="com" style="display:none">RefineSurfaceModelPose</span><span data-if="dotnet" style="display:none">RefineSurfaceModelPose</span><span data-if="python" style="display:none">refine_surface_model_pose</span></a></code>, 
<code><a href="segment_object_model_3d.html"><span data-if="hdevelop" style="display:inline">segment_object_model_3d</span><span data-if="c" style="display:none">segment_object_model_3d</span><span data-if="cpp" style="display:none">SegmentObjectModel3d</span><span data-if="com" style="display:none">SegmentObjectModel3d</span><span data-if="dotnet" style="display:none">SegmentObjectModel3d</span><span data-if="python" style="display:none">segment_object_model_3d</span></a></code>, 
<code><a href="simplify_object_model_3d.html"><span data-if="hdevelop" style="display:inline">simplify_object_model_3d</span><span data-if="c" style="display:none">simplify_object_model_3d</span><span data-if="cpp" style="display:none">SimplifyObjectModel3d</span><span data-if="com" style="display:none">SimplifyObjectModel3d</span><span data-if="dotnet" style="display:none">SimplifyObjectModel3d</span><span data-if="python" style="display:none">simplify_object_model_3d</span></a></code>, 
<code><a href="sample_object_model_3d.html"><span data-if="hdevelop" style="display:inline">sample_object_model_3d</span><span data-if="c" style="display:none">sample_object_model_3d</span><span data-if="cpp" style="display:none">SampleObjectModel3d</span><span data-if="com" style="display:none">SampleObjectModel3d</span><span data-if="dotnet" style="display:none">SampleObjectModel3d</span><span data-if="python" style="display:none">sample_object_model_3d</span></a></code>, 
<code><a href="surface_normals_object_model_3d.html"><span data-if="hdevelop" style="display:inline">surface_normals_object_model_3d</span><span data-if="c" style="display:none">surface_normals_object_model_3d</span><span data-if="cpp" style="display:none">SurfaceNormalsObjectModel3d</span><span data-if="com" style="display:none">SurfaceNormalsObjectModel3d</span><span data-if="dotnet" style="display:none">SurfaceNormalsObjectModel3d</span><span data-if="python" style="display:none">surface_normals_object_model_3d</span></a></code>
</p>
<h2 id="sec_module">模块</h2>
<p>
3D Metrology</p>
<!--OP_REF_FOOTER_START-->
<hr>
<div class="indexlink">
<a href="index_classes.html"><span data-if="dotnet" style="display:none;">类别</span><span data-if="cpp" style="display:none;">类别</span></a><span data-if="dotnet" style="display:none;"> | </span><span data-if="cpp" style="display:none;"> | </span><a href="index_by_name.html">算子列表</a>
</div>
<div class="footer">
<div class="copyright">HALCON算子参考手册 Copyright © 2015-2023 51Halcon</div>
</div>
</div>
</body>
</html>
